home *** CD-ROM | disk | FTP | other *** search
/ System Booster / System Booster.iso / Archivers / DeCruncherFace / Source / DFace.asc < prev   
Encoding:
Text File  |  1996-09-27  |  7.6 KB  |  357 lines

  1. Global ER,PA1$,PA2$
  2. Dim A$(5)
  3. '----------------------------------------------------
  4. 'Tooltypes auslesen
  5. '
  6. WBY=Ex Wb Height
  7. WBX=Ex Wb Width
  8. TTYPE1$=Ex Get Tooltype("DFACE","XPOS")
  9. TTYPE2$=Ex Get Tooltype("DFACE","YPOS")
  10. TTYPE3$=Ex Get Tooltype("DFACE","ICONIFY")
  11. WINX=Val(TTYPE1$)
  12. WINY=Val(TTYPE2$)
  13. If WINX<0 Then WINX=0
  14. If WINY<0 Then WINY=0
  15. If(WINX+250)>WBX Then WINX=(WBX-250)
  16. If(WINY+200)>WBY Then WINY=(WBY-200)
  17. Ex Tooltype Done 
  18. '----------------------------------------------------
  19. 'Prefs laden 
  20. '
  21. If Exist("config")
  22.    Open In 1,"config"
  23.    Line Input #1,PA1$
  24.    Line Input #1,PA2$
  25.    Input #1,PREFPACK
  26.    Close 1
  27. End If 
  28. '----------------------------------------------------
  29. Ex Wind Open 1,WINX,WINY,250,200,$20+$40+$200,14,0
  30. Ex Wind Title 1,"DeCruncherFace V1.02"
  31. Ex Gadgets Init 0,1,5
  32. Ex Labels Init 1,"LHA,LZH,LZX,ZIP,DMS,ARJ,PP,RUN,RAR,AUTO"
  33. Ex Def Cycle 1,30,30,80,15,Ex Labels(1),"Packer",4,1
  34. Ex Def Button 2,30,70,80,15,"DePack",16,1
  35. Ex Def Button 3,130,30,80,15,"Prefs",16,1
  36. Ex Def Button 4,130,70,80,15,"About",16,1
  37. Ex Def Button 5,80,170,80,15,"Quit",16,1
  38. Ex Gadgets Open 1
  39. Ex Set Cycle 1,PREFPACK,1
  40. CP=PREFPACK
  41. If TTYPE3$="YES"
  42.    Ex Wind Zip 1
  43. End If 
  44. SCHLEIFE:
  45. Ex Wind Active 1
  46. Do 
  47.    Multi Wait 
  48.    MSG=Ex Get Msg(1)
  49.    If MSG
  50.       Ex Reply Msg 
  51.       If MSG=$200
  52.          GG=Ex Get Key
  53.          Ex Wind Zip 1
  54.       End If 
  55.       If MSG=$20
  56.          GG=Ex Get Key
  57.       End If 
  58.       If MSG=$40
  59.          GG=Ex Get Key
  60.          If GG=1
  61.             CP=Ex Get Part
  62.          End If 
  63.       End If 
  64.       If GG=5
  65.          FERTIG
  66.       End If 
  67.       If GG=2
  68.          Exit 
  69.       End If 
  70.       If GG=4
  71.          Goto ABOUT
  72.       End If 
  73.       If GG=3
  74.          Goto PREFS
  75.       End If 
  76.    End If 
  77. Loop 
  78. ZEIGER:
  79. P=CP+1
  80. On P Goto LHA,LHA,LZX,ZIP,DMS,ARJ,PP,APLUS,RAR,AUTO
  81. '----------------------------------------------- 
  82. LHA:
  83. FISEL
  84. F1$=Param$
  85. If F1$="" Then Goto SCHLEIFE
  86. AUTO1:
  87. PATH
  88. F2$=Param$
  89. If F2$="" Then Goto SCHLEIFE
  90. G$="lha x "+Chr$(34)+F1$+Chr$(34)+" "+Chr$(34)+F2$+Chr$(34)+Chr$(0)
  91. CONOPEN
  92. DEPACK
  93. CONCLOSE
  94. Goto SCHLEIFE
  95. '----------------------------------------------- 
  96. LZX:
  97. FISEL
  98. F1$=Param$
  99. If F1$="" Then Goto SCHLEIFE
  100. AUTO2:
  101. PATH
  102. F2$=Param$
  103. If F2$="" Then Goto SCHLEIFE
  104. G$="lzx x "+Chr$(34)+F1$+Chr$(34)+" "+Chr$(34)+F2$+Chr$(34)
  105. CONOPEN
  106. DEPACK
  107. CONCLOSE
  108. Goto SCHLEIFE
  109. '----------------------------------------------- 
  110. ZIP:
  111. FISEL
  112. F1$=Param$
  113. If F1$="" Then Goto SCHLEIFE
  114. AUTO3:
  115. PATH
  116. F2$=Param$
  117. If F2$="" Then Goto SCHLEIFE
  118. G$="unzip "+Chr$(34)+F1$+Chr$(34)+" -x -d "+Chr$(34)+F2$+Chr$(34)
  119. CONOPEN
  120. DEPACK
  121. CONCLOSE
  122. Goto SCHLEIFE
  123. '------------------------------------------------
  124. DMS:
  125. FISEL
  126. F1$=Param$
  127. If F1$="" Then Goto SCHLEIFE
  128. AUTO4:
  129. G$="dms write "+Chr$(34)+F1$+Chr$(34)
  130. CONOPEN
  131. DEPACK
  132. CONCLOSE
  133. Goto SCHLEIFE
  134. '------------------------------------------------
  135. ARJ:
  136. FISEL
  137. F1$=Param$
  138. If F1$="" Then Goto SCHLEIFE
  139. AUTO5:
  140. PATH
  141. F2$=Param$
  142. If F2$="" Then Goto SCHLEIFE
  143. A$(1)="cd "+Chr$(34)+F2$+Chr$(34)
  144. A$(2)="unarj x "+Chr$(34)+F1$+Chr$(34)
  145. Open Out 1,"ram:script"
  146. For I=1 To 2
  147.    Print #1,A$(I); : Print #1,Chr$(10);
  148. Next I
  149. Close 1
  150. CONOPEN
  151. A$="execute "+Chr$(34)+"ram:script"+Chr$(34)+Chr$(0)
  152. Dreg(1)=Varptr(A$)
  153. Dreg(2)=0
  154. Dreg(3)=ER
  155. EXE=Doscall(-222)
  156. A$="echo Please Press Left Mousebutton"+Chr$(0)
  157. Dreg(1)=Varptr(A$)
  158. Dreg(2)=0
  159. Dreg(3)=ER
  160. EXE=Doscall(-222)
  161. Ex Mouse Wait 
  162. CONCLOSE
  163. Kill "ram:script"
  164. Goto SCHLEIFE
  165. '--------------------------------------------------
  166. PP:
  167. FISEL
  168. F1$=Param$
  169. If F1$="" Then Goto SCHLEIFE
  170. PATH
  171. F2$=Param$
  172. If F2$="" Then Goto SCHLEIFE
  173. G$="ppack  nodel "+Chr$(34)+F1$+Chr$(34)+" to "+Chr$(34)+F2$+Chr$(34)
  174. CONOPEN
  175. DEPACK
  176. CONCLOSE
  177. Goto SCHLEIFE
  178. '----------------------------------------------------
  179. APLUS:
  180. FISEL
  181. F1$=Param$
  182. If F1$="" Then Goto SCHLEIFE
  183. AUTO6:
  184. PATH
  185. F2$=Param$
  186. If F2$="" Then Goto SCHLEIFE
  187. G$=Chr$(34)+F1$+Chr$(34)+" "+Chr$(34)+F2$+Chr$(34)
  188. CONOPEN
  189. DEPACK
  190. CONCLOSE
  191. Goto SCHLEIFE
  192. '----------------------------------------------------- 
  193. RAR:
  194. FISEL
  195. F1$=Param$
  196. If F1$="" Then Goto SCHLEIFE
  197. AUTO7:
  198. PATH
  199. F2$=Param$
  200. If F2$="" Then Goto SCHLEIFE
  201. A$(1)="cd "+Chr$(34)+F2$+Chr$(34)
  202. A$(2)="unrar x "+Chr$(34)+F1$+Chr$(34)
  203. Open Out 1,"ram:script"
  204. For I=1 To 2
  205.    Print #1,A$(I); : Print #1,Chr$(10);
  206. Next I
  207. Close 1
  208. CONOPEN
  209. A$="execute "+Chr$(34)+"ram:script"+Chr$(34)+Chr$(0)
  210. Dreg(1)=Varptr(A$)
  211. Dreg(2)=0
  212. Dreg(3)=ER
  213. EXE=Doscall(-222)
  214. A$="echo Please Press Left Mousebutton"+Chr$(0)
  215. Dreg(1)=Varptr(A$)
  216. Dreg(2)=0
  217. Dreg(3)=ER
  218. EXE=Doscall(-222)
  219. Ex Mouse Wait 
  220. CONCLOSE
  221. Kill "ram:script"
  222. Goto SCHLEIFE
  223. '----------------------------------------------------- 
  224. AUTO:
  225. FISEL
  226. F1$=Param$
  227. If F1$="" Then Goto SCHLEIFE
  228. CHECK$=Lower$(Right$((F1$),4))
  229. If CHECK$=".lha" Then Goto AUTO1
  230. If CHECK$=".lzh" Then Goto AUTO1
  231. If CHECK$=".lzx" Then Goto AUTO2
  232. If CHECK$=".zip" Then Goto AUTO3
  233. If CHECK$=".dms" Then Goto AUTO4
  234. If CHECK$=".arj" Then Goto AUTO5
  235. If CHECK$=".run" Then Goto AUTO6
  236. If CHECK$=".rar" Then Goto AUTO7
  237. Goto SCHLEIFE
  238. '----------------------------------------------------- 
  239. ABOUT:
  240. REQ$=""
  241. REQ$=REQ$+"  DFace is Freeware, but don't "+Chr$(10)
  242. REQ$=REQ$+"    spread it manipulated !    "+Chr$(10)+Chr$(10)
  243. REQ$=REQ$+"   This Program was designed   "+Chr$(10)
  244. REQ$=REQ$+"  with Amos_Pro V2.0 and AMIPS "+Chr$(10)+Chr$(10)
  245. REQ$=REQ$+"Written in 3/96 by Andreas Wenk"+Chr$(10)
  246. REQ$=REQ$+"E-Mail: sks@wizard.art-line.de "+Chr$(10)
  247. REQ$=REQ$+"   or sks@legobbs.art-line.de  "
  248. RQ=Ex Request(2,"About DFace...",REQ$,"Shut up")
  249. Goto SCHLEIFE
  250. '----------------------------------------------------
  251. PREFS:
  252. Ex Wind Open 2,100,30,250,200,$40+$200,14,0
  253. Ex Wind Title 2,"Prefs Window"
  254. Ex Gadgets Init 0,2,6
  255. Ex Def Button 1,10,30,105,15,"Archive-Path",16,2
  256. Ex Def Button 2,125,30,100,15,"Output-Path",16,2
  257. Ex Def Button 3,30,170,50,15,"Save",16,2
  258. Ex Def Button 4,90,170,50,15,"Use",16,2
  259. Ex Def Button 5,150,170,50,15,"Abort",16,2
  260. Ex Labels Init 2,"LHA,LZH,LZX,ZIP,DMS,ARJ,PP,RUN,RAR,AUTO"
  261. Ex Def Cycle 6,10,70,80,15,Ex Labels(2),"Packer",4,2
  262. Ex Gadgets Open 2
  263. PU1$=PA1$ : PU2$=PA2$
  264. SCHLEIFE2:
  265. Ex Wind Active 2
  266. Do 
  267.    Multi Wait 
  268.    MSG=Ex Get Msg(2)
  269.    If MSG
  270.       Ex Reply Msg 
  271.       If MSG=$200
  272.          PA1$=PU1$ : PA2$=PU2$
  273.          Goto PREFSEND
  274.       End If 
  275.       If MSG=$40
  276.          GH=Ex Get Key
  277.       End If 
  278.       If GH=5
  279.          PA1$=PU1$ : PA2$=PU2$
  280.          Goto PREFSEND
  281.       End If 
  282.       If GH=1
  283.          PATH
  284.          PA1$=Param$
  285.       End If 
  286.       If GH=2
  287.          PATH
  288.          PA2$=Param$
  289.       End If 
  290.       If GH=3
  291.          Open Out 1,"Config"
  292.          Print #1,PA1$
  293.          Print #1,PA2$
  294.          Print #1,PB
  295.          Close 1
  296.          Goto PREFSEND
  297.       End If 
  298.       If GH=4
  299.          Goto PREFSEND
  300.       End If 
  301.       If GH=6
  302.          PB=Ex Get Part
  303.       End If 
  304.    End If 
  305. Loop 
  306. PREFSEND:
  307. Ex Wind Close 2
  308. Ex Gadgets Close 2
  309. Goto SCHLEIFE
  310. '----------------------------------------------------- 
  311. Procedure FERTIG
  312.    Ex Wind Close 1
  313.    Ex Gadgets Close 1
  314.    End 
  315. End Proc
  316. Procedure FISEL
  317.    Shared CP
  318.    SUF$=""
  319.    If CP=0 Then SUF$="#?.lha"
  320.    If CP=1 Then SUF$="#?.lzh"
  321.    If CP=2 Then SUF$="#?.lzx"
  322.    If CP=3 Then SUF$="#?.zip"
  323.    If CP=4 Then SUF$="#?.dms"
  324.    If CP=5 Then SUF$="#?.arj"
  325.    If CP=7 Then SUF$="#?.run"
  326.    If CP=8 Then SUF$="#?.rar"
  327.    FILE$=Ex Filesel$(0,0,"Archiv wählen",PA1$,"",SUF$)
  328. End Proc[FILE$]
  329. Procedure PATH
  330.    PATH$=Ex Devsel$(1,"Zielschublade wählen",PA2$)
  331. End Proc[PATH$]
  332. Procedure CONOPEN
  333.    CONSOLE$="CON:0/0/640/200/Packer-Ausgabe-Fenster"+Chr$(0)
  334.    Dreg(1)=Varptr(CONSOLE$)
  335.    Dreg(2)=1006
  336.    ER=Doscall(-30)
  337. End Proc
  338. Procedure CONCLOSE
  339.    Shared ER
  340.    Dreg(1)=ER
  341.    EXE=Doscall(-36)
  342. End Proc
  343. Procedure DEPACK
  344.    Shared G$,ER
  345.    Dreg(1)=Varptr(G$)
  346.    Dreg(2)=0
  347.    Dreg(3)=ER
  348.    EXE=Doscall(-222)
  349.    MG$="echo please press mousebutton"+Chr$(0)
  350.    Dreg(1)=Varptr(MG$)
  351.    Dreg(2)=0
  352.    Dreg(3)=ER
  353.    EXE=Doscall(-222)
  354.    Ex Mouse Wait 
  355. End Proc
  356.  
  357.